#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;

int n;
int Brr[300];
inline bool Check(){
	for(int i=1;i<=n;i++)
		if(Brr[i]!=Brr[2*n-i+1])
			return false;
	return true;
}
inline bool Cut(int now){
	for(int i=1;i<=now;i++){
		for(int j=now;j>=i;j--){
			if(Brr[i]==Brr[j]){
				for(int l=i,r=j;l<r;l++,r--){
					if(Brr[i]!=Brr[j])return false;
				}
			}
		}
	}
	return true;
}

bool flag;
char Path[300];
int Arr[300];

inline void Dfs(int now,int left,int right){
	if(flag)return ;
	if(!Cut(now))return ;
	if(now==2*n+1){
		if(Check()){
			flag=true;
			for(int i=1;i<=2*n;i++)
				putchar(Path[i]);
			puts("");
		}
		return ;
	}
	else{
		Path[now]='L';
		Brr[now]=Arr[left];
		Dfs(now+1,left+1,right);
		
		Path[now]='R';
		Brr[now]=Arr[right];
		Dfs(now+1,left,right-1);
	}
}

int main(){
	freopen("palin.in","r",stdin);
	freopen("palin.out","w",stdout);
	int Task=1;scanf("%d",&Task);
	
	while(Task--){
		scanf("%d",&n);
		for(int i=1;i<=2*n;i++)
			scanf("%d",&Arr[i]);
		flag=false;
		Dfs(1,1,2*n);
		if(!flag)puts("-1");
	}
	
	return 0;
}
/*
2
5
4 1 2 4 5 3 1 2 3 5
3
3 2 1 2 1 3
*/
